#ifndef __GAMEMENU_FRAME_H__
#define __GAMEMENU_FRAME_H__

#include <QFrame>

class InvaderMenu;

/**
 * The menu which appears after hitting ESC in the game
 */
class GameMenu : public QFrame
{
  Q_OBJECT

public:
  /**
   * @param parent parent of this GameMenu
   */
  GameMenu (QWidget *parent = 0);

signals:
  /**
   * Emitted when the user selects Resume
   */
  void resume ();
  /**
   * Emitted when the user selects Restart
   */
  void restart ();
  /**
   * Emitted when the user selects Clear Highscore
   */
  void clearHighscore ();
  /**
   * Emitted when the user selects Quit
   */
  void quit ();

protected:
  void focusInEvent (QFocusEvent *event);

private slots:
  void menuItemSelected (unsigned int item);

private:
  InvaderMenu *_menu;
};

#endif
